Most operating systems (OSs) provide for the implementation of shared libraries, which may also be known, among other names, as shared or dynamically-linked objects. In a typical OS, shared libraries in need of a repair, or patch, are fixed by replacing one version with another. However, programs that are currently running continue to use the original rather than the replacement, or new, version and only newly executed programs access the new version. This scenario implies that a running program must be restarted to take advantage of an OS modification and, if the running program is a system service that cannot be stopped and restarted, the entire computing system must be rebooted.